/*
 * To change this license header, choose License Headers in Project Properties.
 * To change this template file, choose Tools | Templates
 * and open the template in the editor.
 */
package runebound.modelo.monstruos;

import runebound.modelo.Miniatura;
import runebound.modelo.TipoAmenaza;
import runebound.modelo.monstruos.comportamientos.AntesDeCombate;
import runebound.modelo.monstruos.comportamientos.Recompensa;

/**
 *
 * @author malopez
 */
public class Monstruo extends Miniatura{
    private String titulo;
    private String descripcion;
    private TipoAmenaza tipoAmenaza;
    private AntesDeCombate antesDeCombate;
    private Recompensa recompensa;

    /**
     * @return the titulo
     */
    public String getTitulo() {
        return titulo;
    }

    /**
     * @param titulo the titulo to set
     */
    public void setTitulo(String titulo) {
        this.titulo = titulo;
    }

    

    /**
     * @return the tipoAmenaza
     */
    public TipoAmenaza getTipoAmenaza() {
        return tipoAmenaza;
    }

    /**
     * @param tipoAmenaza the tipoAmenaza to set
     */
    public void setTipoAmenaza(TipoAmenaza tipoAmenaza) {
        this.tipoAmenaza = tipoAmenaza;
    }

    /**
     * @return the antesDeCombate
     */
    public AntesDeCombate getAntesDeCombate() {
        return antesDeCombate;
    }

    /**
     * @param antesDeCombate the antesDeCombate to set
     */
    public void setAntesDeCombate(AntesDeCombate antesDeCombate) {
        this.antesDeCombate = antesDeCombate;
    }

    /**
     * @return the recompensa
     */
    public Recompensa getRecompensa() {
        return recompensa;
    }

    /**
     * @param recompensa the recompensa to set
     */
    public void setRecompensa(Recompensa recompensa) {
        this.recompensa = recompensa;
    }

    
    public String toStringComString() {
        return "{"+this.titulo+", "+super.toString()+", \n '''"+this.descripcion+"'''}\n["+this.antesDeCombate+";"+this.recompensa+"]"; 
    }

    @Override
    public String toString() {
         return "{"+this.titulo+", "+super.toString()+" }";
    }

    
    /**
     * @return the descripcion
     */
    public String getDescripcion() {
        return descripcion;
    }

    /**
     * @param descripcion the descripcion to set
     */
    public void setDescripcion(String descripcion) {
        this.descripcion = descripcion;
    }

    @Override
    public void hit(int heridas) {
        this.setVida(this.getVida()-heridas);
    }
    
    
    
}
